﻿using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Collections;

/// <summary>
/// Descripción breve de MesaBeans
/// </summary>
public class MesaBeans
{
    String idMesa;
    JuegoBeans juego;
    String nombreJuego;
    String fechaAlta;
    int maxJuagadores;
    ArrayList jugadores;
    Chat c;

    public String getIdMesa()
    {
        return idMesa;
    }
    public String getIdJuego()
    {
        return juego.getIdJuego();
    }
	public MesaBeans(String idJuego)
	{
        jugadores = new ArrayList();
        juego = GestionJuegos.getInstance().dameJuego(idJuego);
        nombreJuego = juego.getNombreJuego();
        maxJuagadores = juego.getMaxJugadores();
        fechaAlta = DateTime.Now.ToShortDateString();
        String id=GestionMesas.getInstance().guardarMesa(this);
        idMesa = id;
        c = new Chat();
    }

    public MesaBeans(String idJuego, String id)
    {
        jugadores = new ArrayList();
        juego = GestionJuegos.getInstance().dameJuego(idJuego);
        nombreJuego = juego.getNombreJuego();
        maxJuagadores = juego.getMaxJugadores();
        fechaAlta = DateTime.Now.ToShortDateString();
        idMesa = id;
        c = new Chat();
    }

    public Chat getChat()
    {
        return c;
    }
    /// <summary>
    /// Devuelve false si no hay hueco en la mesa.
    /// </summary>
    public bool añadirJuagador(Usuario u)
    {
        if (jugadores.Count < maxJuagadores)
        {
            jugadores.Add(u);
            return true;
        }
        else
        {
            return false;
        }
    }
    public bool sacarUsuario(Usuario u)
    {
        jugadores.Remove(u);
        return true;
    }
    public int sitiosLibres()
    {
        return maxJuagadores - jugadores.Count;
    }
    public String getNombreJuego()
    {
        return nombreJuego;
    }

}
